﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	///<summary>
	///НДС. Режим учета распределенных оплат
	///</summary>
	[DataContract]
	public enum НДСРежимУчетаРаспределенныхОплат
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
		[EnumMember(Value = "{\"Ссылка\":\"92b2b968-f586-4564-a109-bb194a6e9b4c\", \"Представление\":\"Приоритет_НДСнеМожетБытьПринятКВычету\"}")]
		Приоритет_НДСнеМожетБытьПринятКВычету = 0,//не может быть принят к вычету
		[EnumMember(Value = "{\"Ссылка\":\"df97b8d6-2aee-4b2c-943a-50517abfd19b\", \"Представление\":\"Приоритет_НДСМожетБытьПринятКВычету\"}")]
		Приоритет_НДСМожетБытьПринятКВычету = 1,//может быть принят к вычету
	}
	public static partial class НДСРежимУчетаРаспределенныхОплат_Значения//:ПеречислениеСсылка
	{
		public static readonly Guid Приоритет_НДСнеМожетБытьПринятКВычету = new Guid("19bb09a1-6e4a-4c9b-4564-f58692b2b968");//не может быть принят к вычету
		public static readonly Guid Приоритет_НДСМожетБытьПринятКВычету = new Guid("51503a94-bf7a-9bd1-4b2c-2aeedf97b8d6");//может быть принят к вычету
		public static НДСРежимУчетаРаспределенныхОплат Получить(this НДСРежимУчетаРаспределенныхОплат Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static НДСРежимУчетаРаспределенныхОплат Получить(this НДСРежимУчетаРаспределенныхОплат Значение, Guid Ссылка)
		{
			if(Ссылка == Приоритет_НДСнеМожетБытьПринятКВычету)
			{
				return НДСРежимУчетаРаспределенныхОплат.Приоритет_НДСнеМожетБытьПринятКВычету;
			}
			else if(Ссылка == Приоритет_НДСМожетБытьПринятКВычету)
			{
				return НДСРежимУчетаРаспределенныхОплат.Приоритет_НДСМожетБытьПринятКВычету;
			}
			return НДСРежимУчетаРаспределенныхОплат.ПустаяСсылка;
		}
		public static byte[] Ключ(this НДСРежимУчетаРаспределенныхОплат Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this НДСРежимУчетаРаспределенныхОплат Значение)
		{
			switch (Значение)
			{
				case НДСРежимУчетаРаспределенныхОплат.Приоритет_НДСнеМожетБытьПринятКВычету: return Приоритет_НДСнеМожетБытьПринятКВычету;
				case НДСРежимУчетаРаспределенныхОплат.Приоритет_НДСМожетБытьПринятКВычету: return Приоритет_НДСМожетБытьПринятКВычету;
			}
			return Guid.Empty;
		}
	}
}